#ifndef _MSN_MSG_H
#define _MSN_MSG_H
#include "msn_session.h"
#include "msn_user.h"

typedef struct {
	GString *sender_passport;
	GString *sender_display_name;
	/* include all control information */
	GString *body;
	msn_user_t *owner;
}msn_msg_t;

extern msn_msg_t *msn_msg_new(const char *buf, const int size, msn_session_t *ms);
extern void msn_msg_clean(msn_msg_t *msg);
extern void msn_msg_insert(msn_msg_t *msg, msn_user_t *user);
extern void msn_msg_redirect_start(msn_msg_t *msg);
extern GString *msn_msg_pack(msn_msg_t *msg, int tr_id);
#endif
